1 查找资料。在找资料时不仅要收集程序还要收集程序所附带的工艺流程及 I/O 分配表。
2 程序分类。在收集到前人的程序后,首先加以分类。以不同品牌的程序分类 ——再以不同功能细分。
3 选择程序加以理解。分类完成后就是慢慢的 “消化 ”程序了。首先选择自己熟悉的 PLC 程序或是自己将要用到的程序样例下手,这样理解起来比较容易。
4 对于有工艺流程及 I/O 分配表的程序进行理解。
1) 了解程序的工艺流程。
2) I/O 分配。把 I/O 分配表中的说明加在程序的注释中。
3) 理解中间位。 在程序设计时肯定会用到诸多的中间位做转接, 然后搞清楚每一步或每一网络所对应的中间位的功能, 在程序中加以注释。
4) 理解定时器。程序中定时器的功能要清楚,特别是有时间日期控制的,定时器的功能是比较重要的。其意义也要记 录下来。
5) 理解计数器。
6) 理解陌生指令。在 “消化 ”别人程序的过程中,不勉会看到一些自己没用过或不熟悉的指令,这也是自己要重点理解 的对象,要准备一份电子指令手册随时查找,并在程序中记录。这才是自己要学习与进步的地方。
5、 对于没有任何说明的程序进行理解。
1) 指令应用。对此类程序主要是注意程序中的指令应用。把指令截取下来,以指令名称为为文件名另存在文件夹中。
2) 分系统另存。对于能理解并能整理成系统程序加以另存,比如说程序中的时间系统、 PID 系统等等的程序。
3) 所有的 PLC 指令都是大同小异的,当以后工作中能应用到的部分可以就地取材,举一反三。
更重要的是要了解设备的工艺,只有熟悉了产品和掌握了程序的基本编写方法,才能得心应手! !
目前正在给一些国外企业做防抄板保护方案,之前此企业有一款热销产品被chao袭,价格突然从1000元降到200元,如果按照理论计算,损失8000万。在这里也顺便讲讲电子产品抄板那些事。电子产品复zhi的关键是芯片的jie密,抄板解mi厂商通过芯片解mi在加上PCB抄板(PCB 抄板相对简单),大部分电子产品可以2周之内把一模一样的嵌入式软件和硬件全部提供到位。芯片解mi技术甚至还成为一个“学科”。同时嵌入式软件保护,防抄板技术也成为关键的盾。
抄板当年那些事
此技术起源于国外,在90年代由我国发展壮大,在改革开放初期,技术底子薄,技术feng锁严重,这些抄板jie密技术为我国电子产业的发展节省了大量成本,也是立下汗马功劳,新郑自动化控制柜,当第yi批芯片解mi的人基本上都是找国家实验室代为开片、提图、然后打印图纸,并对图纸进行分析,设定做FIB的实验方案。现在随便在电子市场都能找到非常专业的解mi厂家,价格大概千元到几万不等。但是随着中国科技的提高,解mi技术已经成为了自主创新的壁垒。
解mi原理
所谓加密,就是在特定的引脚上加电压和足够的电流,烧断该引脚熔丝,这样片里的程序就不可以被读出来也不能改写了。解mi就是逆向过程。把芯片置于2000-6000倍的显微镜下,通过一些测量手段将内部版图翻出来,然后找出芯片的ROM总线和控制线,后找到加密熔丝位,接下来就是在芯片上找一个适当的点来做连线跳过熔丝位就可以了。
解mi手段
一般用硝suan融掉IC表层环氧树脂使芯片暴露,再用FIB机台在芯片上切割线路(移除)和连接线路(沉淀),经过FIB线路修改后,把芯片放到编程器上读一下,所有数据就读出来了。当然,往往这个过程并不顺利,需要做多次FIB,有的需要动用微操作仪操作探针台不断进行测试。这个过程中就是芯片提图。任何一个芯片翻出线路图的成本费用很高,时间也较长,这也是研究解mi方案的前期的主要成本,也是给解mi行业做生僻型号价格较贵的原因。
抄板价格
每颗IC根据切割点和连线点的多少费用不等,主要看FIB所花费的时间。FIB有的地方按线收费,有的按时间收费。这是每次解mi芯片的主要成本。
抄板历史
这个行业兴起于90年代初,当第yi批芯片解mi的人基本上都是找国家实验室代为开片、提图、然后打印图纸,并对图纸进行分析,设定做FIB的实验方案。现在随便在电子市场都能找到非常专业的解mi厂家,价格大概千元到几万不等。
防超板对策:防止电路被抄xi,核心在于芯片和安全解决方案设计,目前的众多MCU其实并不具备安全防护功能,所以hao的办法是使用一颗专用的安全芯片,通过安全芯片对接MCU,进行认证,授权,保持关键数据等功能。
第yi:PLC是可以工作在极其恶劣的电磁环境中的
我们都在宣传片中见过三江源地区的藏羚羊,它们生活在极其恶劣的环境中。如果把我们内地的普通山羊放到这里,不出三天,普通山羊恐怕就见牛克斯了。
如果我们把计算机直接放到PLC工作的环境中,无需太久,这些计算机将死机甚至烧毁。
在ABB的早期工程中,我们就是把工业控制计算机直接放在变电站开关柜中,用来实施测控和数据处理。然而,用不了多久,电源故障和硬盘故障,还有输入输出接口的故障就接踵而来,让人烦不胜烦。直到我们用PLC替换下这些工控机,事情才算完。
这叫做抵御电磁骚扰EMC的能力,PLC可达三级甚至四级,而计算机能达到二级就算很不错了。
抵御EMC电磁骚扰,会有许多措施。例如隔离技术、接地技术等等都是。
第二:PLC的程序是一行行顺序执行的,它不会陷入死循环
我们在编写计算机程序时,经常会遇见循环。如果一个循环子程序设计不恰当,或者条件引起了程序返回,有可能进入到死循环中,系统当然就死机了。
然而,PLC的程序是一条接一条顺序执行的,只有到了程序末尾才会回头。在程序中任何部位,若条件满足,可以实现跳转,但程序还是一条接一条顺序执行。
如此一来,PLC几乎不会死机。这也是PLC区别于普通计算机的根本特性。
基于此,我们会发现PLC的可靠性极高,这是普通计算机完全不能比拟的。
第三:冗余配置
所谓冗余配置,就是在控制过程中存在主机和从机,它们依靠握手线关联,并共享资源和信息。
如果是计算机,当主机出现问题时,组装自动化控制柜,切换到从机的时间较长。但对于PLC,我们可以在机架上安排2套CPU作为主从控制,它们之间的转换仅几个时钟周期即可完成。
例如我们的控制对象是汽轮机,它的转子在高速旋转。我们不妨假定转子的转速就是工频周期,也即每分钟3000转。如果我们对汽轮机实施DCS监控,在现场层面我们只能选用带冗余配套的PLC,绝bu可能使用计算机。一旦PLC的主机发生故障,它立刻就转入从机控制,对于受控对象来说几乎感觉不到,但计算机就未必可以实现类似功能了。
事实上,带冗余配套的PLC系统就属于规模较大的PLC。从题主的描述看,似乎连边都没沾上。
第四:PLC的程序特点
PLC的程序规模都不大,一般才几千字节,能上万字节就算很大的程序了。
PLC有许多输入输出接口,以及各种类型的变量,这些都需要专门设置地址,以便在程序中使用。
我们看下图,此图是用PLC国际通用标准IEC61131-3模块化编程语言写成的:
图1:某地铁配电控制系统PLC的输入接口参数定义程序和延迟判误程序
在图1中,我们在左侧看到了许多输入参量,它们的末尾都有_s的标识,这些就是开关量输入参数,它们不但有地址,还有名称。这是必须的,否则程序无法辨识和使用它们。
我们由图1的程序看到,这种编程方法比所谓的C语言方便得多。事实上,每一个功能块就相当于一段C语言。例如TON模块,它是延迟模块,如果用C语言,怎么也要若干语句行,但这里仅仅只是一个程序模块而已。何者更方便一看便知。
我们再看下图:
图2:PLC的16位字解析为单个开关量的程序段
图2中,定做自动化控制柜,程序开头的AND(与逻辑模块)实施程序转移。当条件满足时,AND启动子程序入口。
在图2中,我们看到了UNPACK16模块,它的任务是把一个16位的字解析为16个开关量,供下一步程序使用。
我们很容易想到,这个UNPACK16模块若用C语言来写,又会有何种形式?何者更方便?
我们看下图:
图3:数据交换的RS485接口定义和MODBUS通信管理
图3是PLC对系统中各种数据交换的定义、数据采集和管理。图中的一个个模块就是处理MODBUS通信协议数据的,同时还实现数据采集轮巡操作。
这些模块用C语言该如何写?是不是会麻烦很多?
我们看到,PLC程序的便捷性是C语言无法比拟的。
第五:PLC的工作范围
PLC的内存不大,尽管它的可靠性很高,但PLC不能用于较大的计算。我曾经设计过一个PLC程序,用于浮点数的乘法,麻烦得很,后不得不使用模块配合查表来解决问题。
PLC的内部其实就是单片机,缺相短路保自动化控制柜,只不过整个PLC的单片机系统经过了严格的EMC测试,而操作系统和编程系统也进行了优化,方便我们这些编程者使用。
既然PLC只是一台单片机系统,可想而知它与计算机不在同一个技术水平上。计算机能够完成的工作,哪怕只是一篇WORD文档的写作,用PLC绝bu可能完成。但PLC能够轻松实现的控制功能,用计算机虽然也能勉强实现,但效果极差,且可靠性极低,尺寸也巨大。
如此看来,PLC与计算机的工作特性不一样,适用的工作对象当然也不一样。
所以,题主拿计算机的C语言来比拟PLC的编程语言,并不合适。
另外,题主所谓的规模较大的PLC,这个定义不明确,也是没有意义的。
姓名: | 王继刚 ( 销售经理 ) |
手机: | 18903837318 |
业务 QQ: | 272925472 |
公司地址: | 河南省郑州市高新区继飞机电 |
电话: | 0371-55581867 |
传真: | 0371-55581867 |
Copyright © 2025 继飞机电 版权所有